﻿using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using Business;

namespace Gui.Web.Listado
{
    public partial class ColaboradorLista : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            ObtenerDatos();
        }

        protected void NuevoColaborador_Click(object sender, EventArgs e)
        {
            Response.Redirect("~/Forms/EditarColaborador.aspx", true);
        }

        protected void ListadoColaboradores_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            var index = Convert.ToInt32(e.CommandArgument);
            ListadoColaboradores.SelectRow(index);
            var selectedDataKey = ((GridView)sender).SelectedDataKey;
            if (selectedDataKey == null) return;
            int idColaborador;
            int.TryParse(selectedDataKey.Value.ToString(), out idColaborador);

            switch (e.CommandName)
            {
                case "Editar":
                    Response.Redirect("../Forms/EditarColaborador.aspx?IdColaborador=" + idColaborador, true);
                    break;
                case "Eliminar":
                {
                    var colaborador = new ColaboradorBusiness();
                    colaborador.InactivarColaborador(idColaborador);
                    ObtenerDatos();
                }
                    break;
            }
        }

        private void ObtenerDatos()
        {
            var colaborador = new ColaboradorBusiness();
            ListadoColaboradores.DataSource = colaborador.ObtenerColaboradores(true).ColaboradoresModel;
            ListadoColaboradores.DataBind();
        }
    }
}